import Vue from 'vue'
import App from './App.vue'
import router from './router'
// import './plugins/element.js'
// // 导入全局样式表
// import './assets/css/global.css'
// // 导入字体图标
// import './assets/fonts/iconfont.css'
// import ViewUI from 'view-design'
// import 'view-design/dist/styles/iview.css'

import { 
  Button,
  Breadcrumb,
  BreadcrumbItem,
  Table,
  TableColumn,
  Form,
  FormItem,
  Input,
  Container,
  Header,
  Menu,
  Aside,
  MenuItem,
  MenuItemGroup,
  Card,
  Row,
  Col,
  Message,
  Upload,
  Submenu,
  PageHeader,
  Tag,
  Carousel,
  CarouselItem,
  MessageBox,
  Icon,
  Steps,
  Step,
  Notification,
  Dialog
} from 'element-ui';

Vue.component('Button', Button);
Vue.component('Breadcrumb', Breadcrumb);
Vue.component('BreadcrumbItem', BreadcrumbItem);
Vue.component('Table', Table);
Vue.component('TableColumn', TableColumn);
Vue.component('Form', Form);
Vue.component('FormItem', FormItem);
Vue.component('Input', Input);
Vue.component('Container', Container);
Vue.component('Header', Header);
Vue.component('Menu', Menu);
Vue.component('Aside', Aside);
Vue.component('MenuItem', MenuItem);
Vue.component('MenuItemGroup', MenuItemGroup);
Vue.component('Card', Card);
Vue.component('Row', Row);
Vue.component('Col', Col);
Vue.component('Upload', Upload);
Vue.component('Submenu', Submenu);
Vue.component('PageHeader', PageHeader);
Vue.component('Tag', Tag);
Vue.component('Carousel', Carousel);
Vue.component('CarouselItem', CarouselItem);
Vue.component('Icon', Icon);
Vue.component('Steps', Steps);
Vue.component('Step', Step);
Vue.component('Dialog', Dialog);


Vue.prototype.$message = Message;
Vue.prototype.$confirm = MessageBox;
Vue.prototype.$notify = Notification

// 导入axios
import axios from 'axios'

// 配置请求的根路径和将axios配置为vue的prototype方法
axios.defaults.baseURL = 'http://127.0.0.1:5000'
// 配置请求拦截器配置请求头的Authorization字段提供token令牌
axios.interceptors.request.use(config => {
  config.headers.Authorization = window.sessionStorage.getItem('token')
  return config
})
// 响应拦截，返回data里面的数据
axios.interceptors.response.use(res => {
  return res.data
  // return res
})

// Vue.use(ViewUI)

Vue.prototype.$http = axios

Vue.config.productionTip = false

new Vue({
  // 挂载路由对象
  router,
  // 渲染app组件
  render: h => h(App)
  // 挂载el元素
}).$mount('#app')
